/********************************************
 *      链队列
 * Created by zlj on 2024/6/27.
********************************************/

#ifndef DATA_STRUCTURE_LINKQUEUE_H
#define DATA_STRUCTURE_LINKQUEUE_H
#include "option_config.h"

/**
 * 出始化
 * @param q
 */
void InitLinkQueue(LinkQueue *q);

/**
 * 入队
 * @param q
 * @param x
 */
void EnLinkQueue(LinkQueue *q,ElemType x);

/**
 * 出队
 * @param q
 */
void DeLinkQueue(LinkQueue *q);

/**
 * 打印信息
 * @param q
 */
void LinkQueue_Show(LinkQueue *q);

/**
 * 获取头节点
 * @param q
 * @param v
 */
void LinkQueue_GetHead(LinkQueue *q,ElemType *v);

/**
 * 求长度
 * @param q
 * @return
 */
int LinkQueue_Length(LinkQueue *q);

/**
 * 清空
 * @param q
 */
void LinkQueue_Clear(LinkQueue *q);

/**
 * 销毁
 * @param q
 */
void LinkQueue_Destory(LinkQueue *q);

#endif //DATA_STRUCTURE_LINKQUEUE_H
